A network, which may include wired and/or wireless intranets, the Internet, wide area networks (WANs), local area networks (LANs), etc., may have many attached devices offering and/or seeking services, capabilities and/or resources of other devices. It is often difficult to locate devices offering particular services. To facilitate locating and tracking devices and their services, various “web service” or “directory service” technologies have been implemented.
The term “web service” describes a standardized way of describing, discovering, and integrating network applications, services and resources from different businesses using open standards, such as World Wide Web Consortium (W3C) and Internet Engineering Task Force (IETF) standards, including XML (Extensible Markup Language), SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language), UDDI (Universal Description, Discovery and Integration), etc., over a network. Web services are self-contained modular applications that may communicate directly with other web services, applications, or system software.
UDDI is an industry initiative utilizing a platform-independent open framework for a global set of registries allowing businesses to define their services, discover other businesses and services, and to share information about how the business interacts. Unfortunately, while UDDI's global nature provides a single source for locating offered services, UDDI lacks the ability to automatically identify and remove stale entries. UDDI allows a device to easily register itself and advertise offered or desired services, capabilities and resources, but UDDI expects the device to behave well and remove its data from the database when the services are no longer offered. Unfortunately, if a device suddenly becomes unavailable, stale registry entries may remain associated with the device.
Consequently, a traditional registry environment is not suitable for transitory devices, such as virtual machines (VMs) which may be arbitrarily created and suspended or destroyed, since suspension or destruction is equivalent to a device suddenly dropping off a network without properly attending to its registration.